/*
 * Constants.java
 *
 *  Life Logger v1.0 
    Copyright (C) 2007  Anand Kishore (anand@semanticvoid.com)

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */

package com.semanticvoid.lifelogger.configuration;

/**
 * The definition of all constants used in the project.
 * @author anand kishore
 */
public interface Constants {
    
    /** ITEM TYPE = Search Query */
    public final static int ITEM_TYPE_FOR_SEARCH_QUERY = 0;
    
    /** ITEM TYPE = Search Query Click thru */
    public final static int ITEM_TYPE_FOR_SEARCH_CLICKTHRU = 1;
    
    /** ITEM TYPE = Browse */
    public final static int ITEM_TYPE_FOR_BROWSE = 2;
    
    /** ITEM TYPE = Bookmark */
    public final static int ITEM_TYPE_FOR_BOOKMARK = 3;
    
    /** ITEM TYPE = Google Reader Read Post */
    public final static int ITEM_TYPE_FOR_READ_BLOG = 4;
    
    /** ITEM TYPE = ALL */
    public final static int ITEM_TYPE_FOR_ALL = -1;
    
    
    /**
     *  NODE NAMES
     */
    
    /** Node name for Browse Result */
    public final static String NODE_NAME_FOR_BROWSE_RESULT = "browser result";
    
    /** Node name for Web Result */
    public final static String NODE_NAME_FOR_WEB_RESULT = "web result";
    
    /** Node name for Web Query */
    public final static String NODE_NAME_FOR_WEB_QUERY = "web query";
    
    
    /** Valid browse entity */
    public final static int VALID_BROWSE_ENTITY = 1;
    
    /** invalid browse entity */
    public final static int INVALID_BROWSE_ENTITY = 0;
    
    
    /**
     *  ATTRIBUTE NAMES
     */
    
    // ---------------- Google History -------------------------
    
    /** Attribute name for GUID */
    public final static String GOOGLEHISTORY_ATTR_NAME_FOR_GUID = "guid";
    
    /** Attribute name for TITLE */
    public final static String GOOGLEHISTORY_ATTR_NAME_FOR_TITLE = "title";
    
    /** Attribute name for LINK */
    public final static String GOOGLEHISTORY_ATTR_NAME_FOR_LINK = "link";
    
    /** Attribute name for DATE */
    public final static String GOOGLEHISTORY_ATTR_NAME_FOR_DATE = "pubDate";
    
    /** Attribute name for QUERY GUID */
    public final static String GOOGLEHISTORY_ATTR_NAME_FOR_SEARCH_CONTEXT = "smh:query_guid";
    
    /** Attribute name for CATEGORY */
    public final static String GOOGLEHISTORY_ATTR_NAME_FOR_CATEGORY = "category";
    
    // ---------------- del.icio.us ----------------------
    
    /** Attribute name for GUID for DELICIOUS */
    public final static String DELICIOUS_ATTR_NAME_FOR_GUID = "hash";
    
    /** Attribute name for LINK for DELICIOUS */
    public final static String DELICIOUS_ATTR_NAME_FOR_LINK = "href";
    
    /** Attribute name for TITLE for DELICIOUS */
    public final static String DELICIOUS_ATTR_NAME_FOR_TITLE = "description";
    
    /** Attribute name for TAG for DELICIOUS */
    public final static String DELICIOUS_ATTR_NAME_FOR_TAG = "tag";
    
    /** Attribute name for DATE for DELICIOUS */
    public final static String DELICIOUS_ATTR_NAME_FOR_DATE = "time";
    
    // ---------------- Google Reader --------------------
    
    /** Attribute name for GUID for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_GUID = "id";
    
    /** Attribute name for LINK for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_LINK = "link";
    
    /** Attribute name for LINK-HREF for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_LINK_PROPERTY = "href";
    
    /** Attribute name for TITLE for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_TITLE = "title";
    
    /** Attribute name for DATE for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_DATE = "published";
    
    /** Attribute name for CATEGORY for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_CATEGORY = "category";
    
    /** Attribute name for CATEGORY-TERM for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_CATEGORY_PROPERTY = "term";
    
    /** Attribute name for CONTENT for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_CONTENT = "content";
    
    /** Attribute name for AUTHOR for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_AUTHOR = "author";
    
    /** Attribute name for AUTHOR-NAME for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_AUTHORS_NAME = "name";
    
    /** Attribute name for TIME for Google Reader */
    public final static String GOOGLEREADER_ATTR_NAME_FOR_TIME = "gr:crawl-timestamp-msec";
    
    /**
     * Decorator Constants
     */
    
    /** decorator name for TimeDamper decorator  */
    public final static String DECORATOR_TIME_DAMPER = "timedamper";
    
    /** decorator name for DateSort ASC decorator  */
    public final static String DECORATOR_TIME_SORT_ASC = "timesortasc";
    
    /** decorator name for DateSort DESC decorator  */
    public final static String DECORATOR_TIME_SORT_DESC = "timesortdesc";
        
    /**
     * Config Keys
     */
    
    /** Key for the db username */
    public final static String KEY_FOR_DB_USERNAME = "db_username";
    
    /** Key for the db passwd */
    public final static String KEY_FOR_DB_PASSWD = "db_passwd";
    
    /** Key for the db driver */
    public final static String KEY_FOR_DB_DRIVER = "db_driver";
    
    /** Key for the db dbname */
    public final static String KEY_FOR_DB_DATABASE_NAME = "db_dbname";
    
    /** Key for the db url */
    public final static String KEY_FOR_DB_URL = "db_url";
    
    /** Key for the GoogleHistry xml path */
    public final static String KEY_FOR_GOOGLE_HISTORY_XML_PATH = "googlehistory_xml_path";
    
    /** Key for the del.icio.us xml path */
    public final static String KEY_FOR_DELICIOUS_XML_PATH = "del.icio.us_xml_path";
    
    /** Key for the Google Reader Blog Histoy xml path */
    public final static String KEY_FOR_GOOGLEREADER_HISTORY_XML_PATH = "googlereader_xml_path";
    
    /** Key for IS PROXY TO BE USED */
    public final static String KEY_FOR_IS_PROXY = "is_proxy";
    
    /** Key for proxy url */
    public final static String KEY_FOR_PROXY_URL = "proxy_url";
    
    /** Key for proxy port */
    public final static String KEY_FOR_PROXY_PORT = "proxy_port";
    
    /** Key for file separator */
    public final static String KEY_FOR_FILE_SEPARATOR = "file_separator";
    
    /** Key for search decorators */
    public final static String KEY_FOR_SEARCH_DECORATORS = "search_decorators";
    
    /** Key for Time Damper constant 'k' for browse entity */
    public final static String KEY_FOR_TIME_DAMPER_K_FOR_BROWSE_ENTITY = "time_damper_k_for_browse";
    
    /** Default value for Time Damper constant 'k' from browse */
    public final static float DEFAULT_VALUE_FOR_TIME_DAMPER_K_FOR_BROWSE = 0.5f;
    
    /** Key for Time Damper constant 'k' for search entity */
    public final static String KEY_FOR_TIME_DAMPER_K_FOR_SEARCH_ENTITY = "time_damper_k_for_search";
    
    /** Default value for Time Damper constant 'k' for search */
    public final static float DEFAULT_VALUE_FOR_TIME_DAMPER_K_FOR_SEARCH = 0.5f;
    
    /** Key for Time Damper constant 'Is' (interest slot) */
    public final static String KEY_FOR_TIME_DAMPER_Is = "time_damper_Is";
    
    /** Default value for Time Damper constant 'Is' */
    public final static float DEFAULT_VALUE_FOR_TIME_DAMPER_Is = 24;
    
    /** Key for Time Damper constant 'tk' for browse */
    public final static String KEY_FOR_TIME_DAMPER_TK_FOR_BROWSE = "time_damper_tk_for_browse";
    
    /** Default value for Time Damper constant 'tk' from browse */
    public final static float DEFAULT_VALUE_FOR_TIME_DAMPER_TK_FOR_BROWSE = 720;
    
    /** Key for Time Damper constant 'tk' for search */
    public final static String KEY_FOR_TIME_DAMPER_TK_FOR_SEARCH = "time_damper_tk_for_search";
    
    /** Default value for Time Damper constant 'tk' from search */
    public final static float DEFAULT_VALUE_FOR_TIME_DAMPER_TK_FOR_SEARCH = 720;
    
    /** Ascending sort order */
    public final static short SORT_ORDER_ASC = 1;
    
    /** Descending sort order */
    public final static short SORT_ORDER_DESC = 2; 
}
